package com.boss.salary.dao;

import com.boss.salary.entity.SalaryBankPayBack;
import com.boss.salary.entity.SalaryPaymentRequisitionBack;

import java.util.List;
import java.util.Map;

public interface IPaymentBackHistoryDao {
    /**
     * 批量保存支付回盘历史
     * @param bankBacks
     * @param monthMap
     */
    void batchInsertBankBackHistoryData(List<SalaryBankPayBack> bankBacks,Map<String, String> monthMap);


    /**
     * 批量保存支付回盘历史
     * @param salaryPaymentRequisitionBacks
     * @param monthMap
     */
    void batchInsertPayBackHistoryData(List<SalaryPaymentRequisitionBack> salaryPaymentRequisitionBacks, Map<String, String> monthMap);

    /**
     * 按单位清楚月结前支付回盘数据
     * @param agencyIds
     */
    void deletePayBackData(String agencyIds);

    /**
     * 按单位获取支付回盘信息
     * @param agencyIds
     * @return
     */
    List<SalaryPaymentRequisitionBack> getPayBackData(String agencyIds);


    /**
     * 按单位清楚月结前银行回盘数据
     * @param agencyIds
     */
    void deleteBankBackData(String agencyIds);

    /**
     * 按单位获取银行回盘信息
     * @param agencyIds
     * @return
     */
    List<SalaryBankPayBack> getBankBackData(String agencyIds);

    List<SalaryPaymentRequisitionBack> getPaymentHisDatas(String month, List<String> agencyIds);

    void batchInsertPaymentDatas(List<SalaryPaymentRequisitionBack> spList);

    void deletePaymentHistory(String month, List<String> agencyIds);

    void deleteBankBackDatas(List<String> agencyIds);

    List<SalaryBankPayBack> getBankBackDatas(List<String> agencyIds);

    void batchInsertBankBackHistoryDatas(List<SalaryBankPayBack> sbpList);
}
